import java.util.Scanner;

public class Test {
    //大写转小写
    public static void main1(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextLine()) {
            String s = in.nextLine();
            StringBuilder ret = new StringBuilder();
            for(int i = 0; i < s.length(); i++){
                char ch = s.charAt(i);
                if(ch >= 'A' && ch <= 'Z'){
                    ch += 32;
                }
                ret.append(ch);
            }
            System.out.println(ret);
        }
    }


    //斐波那契数列
    //1  1  2  3  5  8  13  21.....
    public static int fib(int n){
        if(n == 1 || n == 2){
            return 1;
        }
        return fib(n-2) + fib(n-1);
    }
    public static void main2(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextInt()) {
            int n = in.nextInt();
            System.out.println(fib(n));
        }
    }


    //删除公共字符
    /* 输入：They are students.
            aeiou
       输出：Thy r stdnts.  */
    public static void main3(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextLine()) {
            String a = in.nextLine();
            String b = in.nextLine();
            StringBuilder ret = new StringBuilder();
            //遍历字符串a
            for(int i = 0; i < a.length(); i++){
                char ch = a.charAt(i);
                if(!b.contains(ch + "")){
                    ret.append(ch);
                }
            }
            System.out.println(ret);
        }
    }


    //字符串相加
    /* 输入：110101 1010110
       输出：10001011  */
    public static String add(String str1, String str2){
        //考虑到两个数位数不同需要补0的情况，把字符串逆置
        StringBuilder sb1 = new StringBuilder(str1).reverse();
        StringBuilder sb2 = new StringBuilder(str2).reverse();
        StringBuilder ret = new StringBuilder();

        int len1 = sb1.length();
        int len2 = sb2.length();
        //获取最大值
        int max = Math.max(len1,len2);

        //定义一个进位的标记
        boolean flg = false;
        //开始遍历
        for (int i = 0; i < max; i++) {
            //处理补0的操作
            char ch1 = i >= len1 ? '0' : sb1.charAt(i);
            char ch2 = i >= len2 ? '0' : sb2.charAt(i);
            if(ch1 == '0' && ch2 == '0'){
                if(flg){
                    ret.append('1');
                }else {
                    ret.append('0');
                }
                flg = false;
            }else if(ch1 == '1' && ch2 == '1') {
                if(flg){
                    ret.append('1');
                }else {
                    ret.append('0');
                }
                flg = true;
            }else {
                if(flg){
                    ret.append('0');
                }else {
                    ret.append('1');
                }
            }
        }

        //最后是否有进位
        if(flg){
            ret.append('1');
        }
        return ret.reverse().toString();
    }
    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        //next遇到空格结束；nextLine读一行,遇到回车结束
        while(in.hasNext()){
            String str1 = in.next();
            String str2 = in.next();
            String ret = add(str1,str2);
            System.out.println(ret);
        }
    }

}